// MenuPage.h
 
#ifndef __MENU_PAGE_H
#define __MENU_PAGE_H

#include "Common/Archive/LoadCodecs.h"

#include "resource.h"

class CMenuPage: public CPropertyPageImpl<CMenuPage>
{
	typedef CPropertyPageImpl<CMenuPage> baseClass;
public:
	enum { IDD = IDD_MENU};

	BEGIN_MSG_MAP(CMenuPage)
		MESSAGE_HANDLER(WM_INITDIALOG, OnInitDialog)
		COMMAND_ID_HANDLER(IDC_SYSTEM_CASCADED_MENU, OnChange)
		COMMAND_ID_HANDLER(IDC_SYSTEM_INTEGRATE_TO_CONTEXT_MENU, OnChange)
		CHAIN_MSG_MAP(CPropertyPageImpl<CMenuPage>)
	END_MSG_MAP()

	LRESULT OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/);
	//Base class override
	LRESULT OnNotify(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);

	LRESULT OnChange(WORD /*wNotifyCode*/, WORD wID, HWND /*hWndCtl*/, BOOL& /*bHandled*/)
	{
		SetModified();
		return TRUE;
	}

private:
  bool _initMode;
  CListViewCtrl _listView;

public:
  void OnHelp();  
  bool OnItemChanged(const NMLISTVIEW *info);
  int OnApply();  
public:
};

#endif
